package com.ruoyi.goods.domain;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 商品对象 goods
 *
 * @author ruoyi
 * @date 2025-02-26
 */
public class Goods extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 商品ID */
    @Excel(name = "商品ID")
    private Long goodsId;

    /** 商品类型ID */
    @Excel(name = "商品类型ID")
    private Long categoryId;

    /** 商品名称 */
    @Excel(name = "商品名称")
    private String goodsName;

    /** 商品描述 */
    @Excel(name = "商品描述")
    private String goodsDescription;

    /** 商品价格 */
    @Excel(name = "商品价格")
    private BigDecimal goodsPrice;

    /** 原价 */
    @Excel(name = "原价")
    private BigDecimal goodsOriginalPrice;

    /** 库存数量 */
    @Excel(name = "库存数量")
    private Long stockQuantity;

    /** 营销方法ID */
    @Excel(name = "营销方法ID")
    private Long methodsId;

    /** 商品状态（0=售罄，1=停售，2=在售） */
    @Excel(name = "商品状态", readConverterExp = "0==售罄，1=停售，2=在售")
    private Long goodsStatus;

    /** 商品第一张图片 */
    @Excel(name = "商品第一张图片")
    private String goodsImage1;

    /** 商品第二张图片（可空） */
    @Excel(name = "商品第二张图片", readConverterExp = "可=空")
    private String goodsImage2;

    /** 商品第三张图片（可空） */
    @Excel(name = "商品第三张图片", readConverterExp = "可=空")
    private String goodsImage3;

    public void setGoodsId(Long goodsId)
    {
        this.goodsId = goodsId;
    }

    public Long getGoodsId()
    {
        return goodsId;
    }
    public void setCategoryId(Long categoryId)
    {
        this.categoryId = categoryId;
    }

    public Long getCategoryId()
    {
        return categoryId;
    }
    public void setGoodsName(String goodsName)
    {
        this.goodsName = goodsName;
    }

    public String getGoodsName()
    {
        return goodsName;
    }
    public void setGoodsDescription(String goodsDescription)
    {
        this.goodsDescription = goodsDescription;
    }

    public String getGoodsDescription()
    {
        return goodsDescription;
    }
    public void setGoodsPrice(BigDecimal goodsPrice)
    {
        this.goodsPrice = goodsPrice;
    }

    public BigDecimal getGoodsPrice()
    {
        return goodsPrice;
    }
    public void setGoodsOriginalPrice(BigDecimal goodsOriginalPrice)
    {
        this.goodsOriginalPrice = goodsOriginalPrice;
    }

    public BigDecimal getGoodsOriginalPrice()
    {
        return goodsOriginalPrice;
    }
    public void setStockQuantity(Long stockQuantity)
    {
        this.stockQuantity = stockQuantity;
    }

    public Long getStockQuantity()
    {
        return stockQuantity;
    }
    public void setMethodsId(Long methodsId)
    {
        this.methodsId = methodsId;
    }

    public Long getMethodsId()
    {
        return methodsId;
    }
    public void setGoodsStatus(Long goodsStatus)
    {
        this.goodsStatus = goodsStatus;
    }

    public Long getGoodsStatus()
    {
        return goodsStatus;
    }
    public void setGoodsImage1(String goodsImage1)
    {
        this.goodsImage1 = goodsImage1;
    }

    public String getGoodsImage1()
    {
        return goodsImage1;
    }
    public void setGoodsImage2(String goodsImage2)
    {
        this.goodsImage2 = goodsImage2;
    }

    public String getGoodsImage2()
    {
        return goodsImage2;
    }
    public void setGoodsImage3(String goodsImage3)
    {
        this.goodsImage3 = goodsImage3;
    }

    public String getGoodsImage3()
    {
        return goodsImage3;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("goodsId", getGoodsId())
                .append("categoryId", getCategoryId())
                .append("goodsName", getGoodsName())
                .append("goodsDescription", getGoodsDescription())
                .append("goodsPrice", getGoodsPrice())
                .append("goodsOriginalPrice", getGoodsOriginalPrice())
                .append("stockQuantity", getStockQuantity())
                .append("methodsId", getMethodsId())
                .append("goodsStatus", getGoodsStatus())
                .append("goodsImage1", getGoodsImage1())
                .append("goodsImage2", getGoodsImage2())
                .append("goodsImage3", getGoodsImage3())
                .append("createTime", getCreateTime())
                .append("updateTime", getUpdateTime())
                .toString();
    }
}
